package com.blog.utils;

import org.springframework.stereotype.Component;

@Component
public class MarkdownUtil {
    public static String Markdown(String markdownContent) {
        String plainText = markdownContent
                .replaceAll("\\s*#+\\s*", " ")       // 移除标题标记（如 ## 标题）
                .replaceAll("!?\\[.*?\\]\\(.*?\\)", "")  // 移除图片和链接
                .replaceAll("`{3}.*?`{3}", "")   // 移除代码块
                .replaceAll("`([^`]+)`", "$1")   // 移除行内代码
                .replaceAll("\\*{1,2}(.*?)\\*{1,2}", "$1") // 移除加粗/斜体
                .replaceAll("_{1,2}(.*?)_{1,2}", "$1")    // 移除下划线格式
                .replaceAll("~{2}(.*?)~{2}", "$1")       // 移除删除线
                .replaceAll("<[^>]+>", "")       // 移除HTML标签
                .replaceAll("\\s+", " ")         // 合并多个空格
                .trim();
        String summary = plainText.length() > 50
                ? plainText.substring(0, 50).trim() + "..."
                : plainText;
        return summary;
    }
}
